The online Examination System project is a web application that is developed using NodeJS. According to this project, it provides the facility to the user to conduct the online exams easily. In today’s world we can see that almost all the major exams are being conducted in online mode like Jee mains, Neet exams, Gate exam etc. This project also helps students to practice for their main exams, it provides facility of taking mock tests online. Online Examination System (OES) portal have two modules, Student module and the admin module. In Admin module, an Admin can add different exams inn the examination section and student can refer that section to access the exams. After registering into the portal, students can choose the exams and appear in the exams as per their interest.
Introduction
I. INTRODUCTION
Online Examination System(Exam engine) is a technology based of conducting the examination online[1]. User have facilities like defining the examination pattern according to the requirements, MCQ( multiple choice questions or subjective questions, adding exam timer, and exam conduction in online mode without pen and paper. Traditional pen and paper-based tests can be converted to online and paperless exams using the Online Examination System.. Candidates only need a device to appear in the exam like mobile, laptop, desktop , tablet and a browser[4]. It gives the Admin power to generate the result of MCQ pattern based exam instantly. It is used by schools, giant companies, colleges, universities, government institutions, and many more to conduct online assessments easily. In the exam portal( exam engine), invigilation becomes a high priority requirement as it ensures the exam reliability and credibility of the exam. The administrator has a variety of options for creating an interactive and effective online exam. A subjective, quantitative, or MCQ style exam can be simply constructed utilising an examination creation platform that offers a number of question formats. Also, the choice of questions can be done from an existing exam library, or the exam creator can creating a new set of questions/problems by uploading them with just a single click. Conducting a large-scale exam becomes easy when it comes to the online exam. Online test software can accommodate a big number of students at the same time.. The addition of "students management" improves the practicality of conducting a systematic exam for a big number of candidates. It enables the examiner to classify applicants into groups, and then assign individual exams to each group throughout the exam, allowing many exams to be administered simultaneously.
EJS is used to display HTML DOM components on the screen. EJS, or Embedded JavaScript Templating, is a Node.js templating engine. The template engine allows you to create HTML templates with minimal coding. It can also inject client-side data into an HTML template before generating the final HTML. EJS is a simple templating language that builds HTML markup with plain JavaScript. It also makes it easier to include JavaScript into HTML sites.
II. LITERATURE SURVEY
A survey of the literature showed research and studies on the use of various technologies in college and high school courses. "The internet has opened numerous doors for classroom learning, but it may also be a barrier to teaching.”. The new revolutionary technologies offer potential to increase learning and create an environment that is more fascinating and encouraging. According to Hay (2002), an online exam is one in which questions are answered, kept, and frequently graded on computers[6]. The following are the keys to passing an online exam that Hay discovered:
Do not use any software other than that which is required for the exam.
Attempting to utilise other programmes might often cause the exam software to malfunction, compromising your answers.
Even if you have accomplished your test and are about to leave, you should not use the pc for anything except the assessment.
The OES is one of the exam-taking methods that does not require any type of paper or pen. It is the most common method of taking exams online. Because speed and accuracy are the system's backbone, they are also the reason for its fame. Many scholars have already conducted study on online examination systems, and we've developed OES to keep track of these findings for future reference, and it's as follows: [2] Tomás Sánchez Navarro states how you can use EJS with express framework and how to set view engine.[4] EJS.co stated that how to use variable and programming logic in HTML by embedding using EJS.
III. SYSTEM OBJECTIVE
This web application is mainly used for the conduction of online examinations. The students can log in to their portals and appear in the exam in the given time duration. To automate examination and make the life of users more comfortable. Exam Engine reduces the manual work, maintaining accuracy, increasing efficiency, and saving time. In addition, instead of developing new software every time, institutes can simply enroll and conduct a test. For students, it saves time of going too far away from centers and also, they can view their result then and there.
User-friendly system.
Responsive design
Exam organization
Participation of student in an exam.
Reports and performance analysis
IV. SYSTEM ARCHITECTURE
A. Exam Engine Consist of Three Modules.
Create: For Creating Question Papers.
Participate: For participating in exam.
Evaluate: For checking performance in exam.
B. Internal Project Architecture
Node Package Used
a. bcrypt:It is used for encrypting private information like password and answer.
b. @sendgrid/mail: It is used for sending email to students as well as teachers.
c. Ejs: NodeJS package for using EJS framework
d. Express:It is used for using Express JS Framework
e. express-ejs-layouts: It is used for setting EJS view engine in the Express Framework
f. Passport: This module is used for authenticating users while login into Exam Engine
g. Nodemon: It is used for monitoring the NodeJS application
h. Mongoose: It is used for integration with MongoDB
2. File Directory Architecture
a. Config:For configuration of API Keys and passport authentication.
b. Models:Used for storing Application Database models.
c. node_modules:Folder where all the packages used are stored.
d. public:Public directory where all the asset like images, CSS and JS file are stored.
e. routes:This folder various URL routes and action performed while GET or POST requests.
f. view: This folder contain EJS files used for rendering html
g. App.js: Entry file of Exam Engine.
The following figure show how to use EJS to generate different attributes fetch from database .
Step 1: Fetching records from database like questions, user details, etc. 46
Step 2: Store them into a variable
Step 3:Pass the variable as parameter in the render function of express framework.
Step 4: Applying programming logic like for loop inside html using EJS
V. FEATURES
One of the most important feature is time saving, As large number of students ca participate in online examination at the same time without any seating arrangement.
Paper cost and its wastage will be reduce.
System will save the responses and will check it on the spot automatically..
Multiple Question papers are randomly generated by the server and only one question paper is served to one student.
Admin has the power of creation, modification and deletion the exam.
Users will be given a unique id at the time of registration they can use the login credentials and appear in the examinations and can also see the result..
It will lessen the work of retrieving the answers given by the students.
The web application will help share the mock question papers and the practice papers created by the teacher (admin).
Questions can contain different graphs, diagrams, figures, etc.
The online examination system(OES) is using a password based authentication.
All the details of Students and faculty are stored in the database.
VI. FUTURE WORK
As exam portal has to be secure and should have some anticheating mechanism so there should be proctoring. So in upcoming version of exam engine will have following functionalities like proctoring, live candidate viewing options. There will be more role in applications. The variety of question type will be increased in upcoming version.
Conclusion
Online exams are undeniably becoming a popular method of evaluating candidates\' knowledge and abilities. They give educational institutions the freedom to easily establish, administer, and assess examinees[8]. Results can be announced instantaneously after the participants finished the test thanks to speedy evaluation and real-time report generating. By automating manual, arduous, and time-consuming operations, online examination examinations have changed the education business. Compared to other exams, the Online Examination System is far superior. We have come to result that the problems can be solved by introducing new security systems using biometrics we can identify the student’s identity by analyzing digital signature or by fingerprint mechanism and also by providing web cameras in the examination hall. Although web cameras Sometimes gets failed, if supposed a candidate is giving exam and facing downwards in such case Iris recognition and face recognition must be used[9]. We conclude that no mechanism is ideal. Each mechanism has some restriction on its own. Key concepts are to develop paperless environment and to convert all the documentation in digital form.
References
[1] V.Sel i R.Sankar and R.Umarani “The Design and Implementation of On-Line Examination Using firewall security ” in OSR Journal of Computer Engineering (IOSR-JCE) Volume 16, Issue 6, PP 20-24
[2] Mohammad A Sarrayrih and Mohammed Ilyas, “Challenges of Online Exam Performances and problems for the online uni ersity exam ” in JCS International Journal of Computer Science Issues, Vol. 10, Issue 1, No 1, 2013.
[3] Zhao Qiao-fang and Li Yong-Fei “Research and De elopment of Online Examination System ” in Proceedings of the 2012 2nd International Conference on Computer and Information Application (ICCIA 2012).
[4] Kurniawan, A. (2014). Node.js Succinctly. Synfusion Inc.
[5] Govett, D. (2010, March). Learning Server-Side JavaScript with Node.js. Retrieved from Envato Tuts+: http://www.webcitation.org/6ePoNkZwD
[6] Teixeira, P. (2013). Hands-on Node.js. In P. Teixeira, Hands-on Node.js. Lean Publishing.
[7] Young, A. (2012, May). Windows and Node: Getting Started. Retrieved from Dailyjs: http://www.webcitation.org/6ePozY7jz
[8] Tom Hughes-Croucher, M. W. (2012). Node: Up and Running. In M. W. Tom Hughes-Croucher, Node: Up and Running. O\'Reilly Media Inc.
[9] Ortiz, A. (2013, March). Server-side Web Development with JavaScript and Node.js. Retrieved from http://webcem01.cem.itesm.mx:8005/node/node.html
[10] Mike Cantelon, T. H. (2013). Node.js in Action. Manning Publications.
[11] Rauch, G. (2012). Smashing Node.JS JavaScript Everywhere. John Wiley & Sons Inc.
[12] Teixeira, P. (2013). Professional NodeJs: Building JavaScript-Based Scalable Software. John Wiley & Sons Inc
[13] Software Requirements Specification for Problem Based Learning Module, Souman Mandal,2010.
[14] Ainscough, T. L. (1996). \"The Internet for the rest of us: marketing on the World Wide Web.\" Journal of consumer marketing 13(2): 36- 47.
[15] Software Design Specification (SDS) Acropolis Course Management System, 2011.
[16] Software Requirements Specification for PPDP Contact Management System (CMS)
[17] SWeaver, D., et al. (2005). Evaluation: WebCT and the student experience. Evaluations and Assessment Conference.
[18] Yang Zhigang. Network optimization algorithms in test system Lectures 2006:91-92
[19] Li Yueru. Algorithmic Online Examination System Design FuJian computer.2009,1:66-67
[20] Li Xueling, Guan Qun. Design and Implementation of Online Examination System Based on PHP technology.
[21] Yin Xiaoling, Xia Qishou1, Fan Xunli. Analysis and Study of Volume Pattern in Network Test System. Computer.